// const { json } = require('body-parser');
const http = require('http')
const https = require('https')

let url = 'https://www.xiaomiyoupin.com/mtop/market/search/placeHolder'

http.createServer((req,res)=>{
    res.writeHead(200,{
        'Content-Text':'application/json; charset=utf-8',
        'access-control-allow-origin':'*'
    })
    if(req.url=='/home'){
        httpspost((data)=>{
            console.log(data);
            res.end(JSON.stringify(data))
        })
    }
}).listen(9000,()=>{
    console.log('server start');
})

function httpspost(cb){
    let data = ''

    // 不同于http.get的是，http把post请求的方法名命名为了request, 该方法会把你写好的请求封装成一个对象返回出来，该方法接受两个参数，第一个是请求地址，第二个是回调函数。回调函数的用法基本和get相同。不过要注意，post请求通常是需要携带数据的，所以你需要调用request方法返回来的对象的write方法去加入参数，并且全部加入完成后需要调用req.end()表示没有参数了，请求可以发送了
    let req = https.request(url,(res)=>{
        res.on('data',(chunk)=>{
            data+=chunk
        })

        res.on('end',()=>{
            cb(data)
        })
    })

    // 在这里对于post请求需要的参数进行写入，用法是不是很熟悉?
    req.write(JSON.stringify([{},{ypClient: 3}]))
    req.end()
}